<?php 
namespace Api\Controller;
use Think\Controller;
class CommonController extends Controller{
	
	function _initialize() {
		//$this->checkToken($_REQUEST['token']);
	}
	
	public function checkToken($token){
		if(!_check_token($token)){
			_api_bad_request('token验证失败',1);
		}
	}
	
	/**
	 * 统一返回结构
	 * @param int $ret 表示为返回状态码
	 * 			200：接口正常请求并返回
	 *			4XX：客户端非法请求
	 *			5XX：服务器运行错误
	 * @param array $data
	 * @param string $msg
	 */
	protected function retjson($ret,$data,$msg){
		$arr = array(
				'ret'=>$ret,
				'data'=>$data,
				'msg'=>$msg
		);
		header("Content-type: text/html; charset=utf-8");
		echo $this->ch_json_encode($arr);
		exit();
	}
	/**
	 * 将中文编码
	 * @param array $data
	 * @returnstring
	 */
	protected function ch_urlencode($data) {
		if (is_array($data) || is_object($data)) {
			foreach ($data as $k => $v) {
				if (is_scalar($v)) {
					if (is_array($data)) {
						$data[$k] = urlencode($v);
					} elseif (is_object($data)) {
						$data->$k = urlencode($v);
					}
				} elseif (is_array($data)) {
					$data[$k] = ch_urlencode($v); //递归调用该函数
	
				} elseif (is_object($data)) {
					$data->$k = ch_urlencode($v);
				}
			}
		}
		return $data;
	}
	/**
	 * 解决json中文编码问题的方法
	 */
	protected function ch_json_encode($data) {
		$ret = $this->ch_urlencode($data);
		$ret = json_encode($ret);
		return urldecode($ret);
	}
}
?>